In a typical micro-computer, printed circuit boards are used to hold the bulk of the electronic circuitry. A common design is to use a large printed circuit board to hold the circuitry required to operate the basic functions of the computer. This large printed circuit board will be referred to herein as a mother board.
In addition the basic functions of the computer, which are performed by the circuitry on the mother board, a number of other functions have been developed to perform specific tasks for a computer user. For example, large data storage requirements have been satisfied through the use of storage devices such as magnetic disk devices and optical disc storage devices, and a variety of printing devices have been developed to support the requirement for printed output. The wide variety of input/output (I/O) devices available each have specific electronic circuitry requirements to allow the computer to control the operation of, and interface with, the I/O device. Since the particular work a computer is used for will dictate the types of required I/O devices, it is economically inefficient to include circuitry as a standard feature on the mother board which supports a specific type of I/O device or a specific optional function.
Recognition of this inefficiency led to the development of printed circuit base adapter cards (hereinafter referred to as basecards). Basecards are printed circuit boards which are designed to hold electronic circuitry required to perform a specific function, such as controlling a printer or storage device and interfacing that device with the mother board, or any other desired function. The specific function performed is not important for the purposes of this disclosure. The advantage of using basecards is that it requires the cost of circuitry to be incurred only when it is required to support a specific function. Basecards typically have edge connectors with electrical contacts which can be plugged into a connector on the mother board, thereby adding the basecard circuitry to the circuitry on the mother board. In addition, basecards which connect to I/O devices usually have an I/O connector on an edge of the card which allows a cable to be connected between the I/O device and the basecard. In a typical micro-computer, the mother board has multiple connectors to attach to multiple basecards. While the plane of the basecard is often perpendicular to the plane of the mother board, it is not required to be perpendicular, and may in fact be oriented at any angle convenient for packaging purposes.
Over time, the types of functions performed by basecards have become increasingly complex, with a corresponding increase in circuit requirements. This has led, in turn, to the development of daughter cards. A daughter card is defined for the purposes of this disclosure as a printed circuit card which connects to a basecard and adds circuitry to the basecard in the same manner as the basecard adds circuitry to the mother board. It is typically attached to the basecard in a plane which is substantially parallel to the plane of the basecard. Likewise, more than one type of daughter card may be designed for a basecard, just as more than one type of basecard may be designed for a mother board.
The use of multiple basecards by a mother board has imposed space constrains. The space constraints result in a defined physical space envelope in which each basecard may be placed. As a consequence, and an additional limitation on the location of the I/O connector is created which requires that the connector be attached to the basecard. This is due to the thickness of the I/O connector which, if placed on the daughter card, would impinge on the space envelope of the next basecard. The limitation on the location of the I/O connector requires the use of a connector which can be used by any of the daughter cards which might be connected to the basecard. It is possible that each of the multiple optional daughter cards available for a given basecard may have a different I/O connector requirement due to the number of connection lines required for the particular I/O device. This generally results in the selection of the I/O connector with the largest number of lines, and hence, the I/O connector with the highest cost.
In addition to the added cost of daughter cards caused by the lack of flexibility in choice of connectors, another problem exists due to the normal evolution of system architecture which is even more costly. As each new generation of computers is developed to replace the previous generation, changes in physical packaging can prevent daughter cards from being used in the new generation of computers. Likewise, daughter cards developed for the new generation of computers may not fit in older generation computers. This incompatibility causes several problems.
Purchasers of computers with daughter cards have a significant investment in the cards. That investment may effect the ability of the purchaser to change to a new system if the cost of replacing the function provided by the daughter cards makes the change economically prohibitive. Likewise, a daughter card developed for another system architecture may be very desirable to a purchaser, but be economically prohibitive to use if the entire system must be changed due to incompatibility of the card with the purchaser's system.
For similar reasons, incompatibility of daughter cards developed for systems of different architecture types causes problems for manufacturers as well as purchasers. A significant investment in daughter cards of one architecture type will discourage purchasers from investing in a different architecture type. In addition, manufacture of multiple daughter cards having the same function, but packaged for multiple architecture types, will increase manufacturing costs, increase inventory stocking problems, and increase the ultimate cost to the purchaser.
Thus, incompatibility caused by differences in packaging between different architecture types impairs the ability of computer purchasers to upgrade to new computers or to use functions developed for other architecture types. In addition, it also increases the cost of manufacturing daughter cards, inventory costs, and purchase costs.